#include"BinaryTree.h"

int main()
{
	BTNode* node1 = BinaryTreeNodeCreate(1);
	BTNode* node2 = BinaryTreeNodeCreate(2);
	BTNode* node3 = BinaryTreeNodeCreate(3);
	BTNode* node4 = BinaryTreeNodeCreate(4);
	BTNode* node5 = BinaryTreeNodeCreate(5);

	node1->left = node2;
	node1->right = node4;
	node2->left = node3;
	node4->right = node5;

	BinaryTreePrevOrder(node1);
	printf("\n");
	BinaryTreeInOrder(node1);
	printf("\n");
	BinaryTreePostOrder(node1);
	printf("\n");
	printf("size: %d\n", BinaryTreeSize(node1));
	printf("leaf size: %d\n", BinaryTreeLeafSize(node1));
	printf("level size: %d\n", BinaryTreeLevelKSize(node1,3));
	printf("address: %p\n", node5);
	printf("address: %p\n", BinaryTreeFind(node1,5));
	BinaryTreeLevelOrder(node1);
	printf("\n%d\n", BinaryTreeComplete(node1));
	printf("dep :%d\n", BinaryTreeDepth(node1));
	return 0;
}